home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 029a / sutil262.zip / SUTIL.DOC < prev    next >
Text File  |  1991-07-15  |  24KB  |  510 lines

  1. ------------------------------------------------------------------------------
  2. 07/15/91                   Supreme Utility              All Rights Reserved
  3. Copyright (c) 1990-91 by SupremeSoft        Integrated Copy/Move/Delete/Rename
  4. ------------------------------------------------------------------------------
  5.                             Version 2.62
  6.  
  7.  
  8.         Supreme Utility is a command line based program which allows you to
  9. Copy, Delete, Rename and Move files all in one operation. Imagine begin able
  10. to delete all your BAK files while at the same time copying all your DOC
  11. files to your word processing directory!
  12.  
  13.         Supreme Utility can work locally or globally. That is, it can
  14. manipulate files in only the current directory, or on the entire disk.
  15. Naturally you are in complete control at all times, unless you choose not to
  16. be. Here is the calling syntax:     ( [] indicates optional items)
  17.  
  18. SUtil [-|/][Gflags] [-|/][mdcrx] filelist [,filelist] [-|/][flags] [@filen] ..
  19.  
  20.  
  21. The ".." indicates that you may include more combinations of commands/flags
  22. in the same form as specified earlier.
  23.  
  24.  
  25.   Where:         m     =  move these files
  26.                  d     =  delete these files
  27.                  c     =  copy these files
  28.                  r     =  rename these files
  29.                  x     =  exclude these files     (See Excluding Files below)
  30.  
  31.   Flags are:     h     =  Use Hidden/System files as well   (Off by default)
  32.                  g     =  Work on the entire disk           (Off by default)
  33.                  p     =  Disable prompting                 (On  by default)
  34.                  q     =  Quiet mode                        (Off by default)
  35.                  e     =  check Exclude list                (Default depends)
  36.                  s     =  Scan subdirectories               (Off by default)
  37.  
  38.   @filen:        Indicates a file consisting of operations to be read in.
  39.                  (filen = any valid DOS filename, including leading path)
  40.  
  41. A filelist consists of a list of filenames, as many as you want. If you do
  42. not explicitly specify a second filelist using the "," separator, the last
  43. filename in the file list is taken as the target (if appropriate).  (See
  44. "Oddities" below)
  45.  
  46.   [-|/]  indicates you may use either a "-" or a "/". These are commonly
  47. referred to as the "switch" characters.
  48.  
  49.   Each operation (m,d,r, c, or x) MUST be preceded by a switch, and each flag
  50. (H, G, P, Q, E) MUST be preceded by a switch.
  51.  
  52.   Case is insignificant, i.e., M = m, C = c, H=h, etc.
  53.  
  54.   GFlags are flags which are set as defaults for all operations. If you
  55. specify any flags after certain commands, they will then override the default
  56. flags set in GFlags for that operation only.
  57.  
  58.   Flags may appear anywhere on the command line, except between filename
  59. lists. If you override a default flag, it will return to its default after
  60. the operation completes. Use GFlags to set/reset defaults.
  61.  
  62.   Quiet mode will turn off the File Exists warning, thereby proceeding with
  63. the operation and overwriting any existing files.
  64.  
  65.   If a "," is included between filename lists, the filenames FOLLOWING the
  66. "," will be used as new target names. (See below for further information)
  67.  
  68.   Filenames may consist of a leading path, and any DOS wildcards.
  69.   NOTE!: A DOS wildcard of *?????, that is a star (*) anywhere in the
  70.          wildcard, will match ALL files, regardless of what follows, or
  71.          precedes the * indicator. See ODDITIES for more information.
  72.  
  73.   Each command may have any number of filenames following it.
  74.  
  75.   You may use multiple @filen specifications if you wish.
  76.  
  77.   Ctrl-Break/Ctrl-C will abort the program.
  78.  
  79.   DOS ERRORLEVEL is set for batch file testing. The following are the
  80. possible return codes:
  81.  
  82.              0    Success
  83.              1    Help was activated  (no command line)
  84.              2    Fatal error, program aborted
  85.              3    Out of memory error
  86.  
  87.   Use the DOS environment variable SUTIL to set initial operations. The syntax
  88. is:   SET SUTIL = [operations]
  89.  
  90.   If you choose the Sub-directory option, Supreme Utility will scan all
  91. subdirectories of the CURRENT directory for matching files. Any leading path
  92. identifiers are ignored. If you issue the Global option, then this option will
  93. be ignored.
  94. -----------------------------------------------------------------------------
  95. Moving files:
  96.  
  97.         To move files, use the -m or /m option and specify the files to be
  98. moved. You do not have to specify the target directory as long as the files
  99. to be moved are not in the current directory. If you leave prompting active,
  100. you will be asked to confirm each move.
  101.  
  102.         The target directory cannot be the current directory, but can be
  103. anything else, including another Drive/Directory combination. The files will
  104. be moved extremely quickly, though Drive to Drive moves will take longer
  105. depending on the drive types.
  106.  
  107.         You may also specify that the files be named differently by
  108. specifying a path/filename combination. See Example5.
  109.  
  110.         The Date/Time stamp on the source file will be preserved on the
  111. target file. In other words, the Date/Time stamp on the target file will
  112. be the same as on the source file.
  113.  
  114. Example1:  SUtil /m test.bak test.doc \temp /p
  115. Does    :  Moves "test.bak" and "test.doc" to the "\temp\" directory, and
  116.            does not prompt you for verification.
  117.  
  118. Example2:  SUtil -m \temp\*.bak \docs\test.doc \tt.doc
  119. Does    :  Moves all BAK files from the "\temp\" directory, "test.doc"
  120.            from the "\docs\" directory, "tt.doc" from the root to the CURRENT
  121.            directory.
  122.  
  123. Example3:  SUtil /m *.bak \junk\ /h /g /q
  124. Does    :  Moves all BAK files on the ENTIRE disk to the "\junk\" directory,
  125.            and this will also move BAK files which are marked as
  126.            Hidden/System. In addition, if any of the files exist in the
  127.            target directory, they are overwritten automatically.
  128.  
  129. Example4: SUtil -m \temp\*.bak /g
  130. Does    : Will move all BAK files from the "\temp\" directory to the CURRENT
  131.           directory, and will then attempt to find any further "\temp\*.bak"
  132.           files on the disk. Since there will be no more, nothing further is
  133.           done.
  134.  
  135. Example5: SUtil -m myfile.tst hey.me,\test\junk.tst \test\hey.tst /p/h
  136. Does    : Will move "myfile.tst" to "\test\junk.tst" and "hey.me" to
  137.           "\test\hey.tst". No prompting is done, and hidden files are moved.
  138.  
  139. Example6: Sutil -m *.pas, *.bak /p
  140. Does    : Moves all PAS files in the current directory to BAK files in the
  141.           current directory. You are not prompted.
  142.           (This is essentially the same as a rename)
  143.  
  144.         Remember, you cannot move files in the current directory to the
  145. current directory unless you specify a new target name. The program will
  146. issue an error message if you attempt to move into the same
  147. directory using the same name.
  148. -----------------------------------------------------------------------------
  149. Deleting Files:
  150.  
  151.         To Delete files use the -d or /d option. If you leave prompting on,
  152. you will be asked to confirm each delete.
  153.  
  154. Example1: SUtil -d *.bak *.txt /p
  155. Does    : Deletes all BAK files and all TXT files in the current directory,
  156.           but does not ask you to verify the delete(s).
  157.  
  158. Example2: SUtil /d *.bak /g /p
  159. Does    : Deletes all BAK files on the entire disk. Even though prompting is
  160.           off, you will be asked to confirm this rather drastic operation.
  161.           (This prevents accidental *.* global deletions)
  162.  
  163. Example3: SUtil -d *.bak *.tx2 /g
  164. Does    : Same as above example, except all TX2 files are deleted as well and
  165.           you are prompted before each file is deleted.
  166.  
  167. Example4: SUtil /d *.bak -g -d *.obj /p /H
  168. Does    : Same as Example2 except all OBJ files in the current directory are
  169.           deleted as well, even if the files are marked as Hidden/System. You
  170.           are not prompted for the delete of the OBJ files.
  171.  
  172. Example5: SUtil /d *.bak /g *.~* /g
  173. Does    : Deletes all BAK files and all *.~* files on the entire disk. You
  174.           are prompted to confirm both of these deletes. The second "/g" is
  175.           not translated since you can not turn off global usage once
  176.           activated.
  177. ------------------------------------------------------------------------------
  178. Copying files:
  179.  
  180.         To copy files, use the -c or /c option. You may specify a list of
  181. files and a target directory. Optionally you can leave out the target
  182. directory, and the current directory will be used. To copy a file to a new
  183. name, specify a path/filename combination as the target. (See Example3)
  184.  
  185.         The Date/Time stamp on the source file will be preserved on the
  186. target file. In other words, the Date/Time stamp on the target file will
  187. be the same as on the source file.
  188.  
  189. Example1: SUtil -c *.bak \temp /g /p
  190. Does    : Will copy all BAK files on the disk to the "\temp\" directory. You
  191.           will not be asked for verification.
  192.  
  193. Example2: SUtil -c \pas\*.pas \myfile.exe \*.obj /h /q
  194. Does    : Will copy all PAS files from the "\pas\" directory, "myfile.exe"
  195.           from the root directory, all OBJ files from the root directory, to
  196.           the CURRENT directory. Any files marked as Hidden/System will also
  197.           be copied. You are asked to verify each file copied. Should any
  198.           files already exist in the target directory they are overwritten
  199.           automatically, without warning.
  200.  
  201. Example3: SUtil -c myfile.pas , \temp\test.pas /p
  202. Does    : Will copy "myfile.pas" to "\temp\test.pas" without prompting you.
  203.           Note the use of the "," to indicate that "\temp\myfile.pas" is a
  204.           target and not a file to be copied. (The spaces before and after the
  205.           comma are only for  emphasis and need not be there.
  206.  
  207. Example4: SUtil /c ha.exe \temp\ha.exe /p
  208. Does    : Will copy "ha.exe" to the current directory, and "\temp\ha.exe"
  209.           to the current directory. This probably isn't what you wanted, but
  210.           instead wanted to use something like Example3.
  211. ------------------------------------------------------------------------------
  212. Renaming files:
  213.  
  214.         To rename files, use the /r or -r option. You may specify a list of
  215. filenames and MUST include target names using the "," (comma) separator.
  216.  
  217. Example1: SUtil -r *.bak, *.pas /p/g
  218. Does    : Will rename all BAK files on the ENTIRE disk to PAS files. You
  219.           are not prompted at all.
  220.  
  221. Example2: SUtil /r *.bak myfile.txt,*.txt junk.txt
  222. Does    : Will rename all BAK files to TXT and "myfile.txt" to "junk.txt".
  223.  
  224. Example3: SUtil -r *.bak *.tst
  225. Does    : Produces an error, you did not specify any target files.
  226.  
  227. Example4: SUtil -r \temp\myfile.tst,myfiles.tst
  228. Does    : Renames "\temp\myfile.tst" to "myfiles.tst" effectively mimicking a
  229.           move operation.
  230. ------------------------------------------------------------------------------
  231. Re-issuing a command and the use of GFlags:
  232.  
  233.   Once you have used a command, you may reuse it later on should you so desire.
  234.  
  235.  
  236. Example1: SUtil /p -c *.bak a: -m test.pas \pas /p -c \pas\*.c \c /q
  237. Does    : Prompting is disabled for all operations, unless overriden.
  238.           Copies all BAK files in the current directory to A:, no prompting.
  239.           Moves TEST.PAS to \PAS, prompting is enabled.
  240.           Copies all C files in \PAS to \C, Quiet mode is enabled.
  241.  
  242. Example2: SUtil -q-p -r *.bak *.txt -m *.txt \junk /q -r *.asc *.txt
  243. Does    : Quiet mode is on, Prompting is off for all operations.
  244.           Renames all BAK files to TXT.
  245.           Moves all TXT files to \JUNK, Quiet mode is disabled.
  246.           Renames all ASC files to TXT.
  247. ------------------------------------------------------------------------------
  248. Excluding Files:
  249.  
  250.    The exclude list consists of filenames which are NOT to be used in any
  251. operations.
  252.  
  253.    If you specify an Exclude list as the very first operation, this becomes
  254. the GLOBAL exclude list, and all operations will check that list before acting
  255. on a file. In this case, use the E flag after any operation you do not want
  256. to check the exclude list.
  257.  
  258.    If you specify an Exclude list after any operation, only that operation
  259. will check that exclude list before operating on any file. If there is a
  260. GLOBAL exclude list, for this operation it is ignored in favor of the new
  261. exclude list.
  262.  
  263.    If you specify the E flag as a GFlag (i.e. it is used before any operation)
  264. the very first Exclude list encountered will be used as the GLOBAL exclude
  265. list for all operations FOLLOWING the exclude list declaration and of course
  266. the operation just before the exclude declaration.
  267.  
  268.    If you specify the E flag after any operation, and NO GLOBAL exclude list
  269. exists, if there was an exclude list used, that FIRST exclude list is used.
  270. (See examples 5 and 6 for an explanation of this)
  271.  
  272.    Do NOT use the "," separator to specify target names, since this does not
  273. make sense, and all files following the "," will be ignored.
  274.  
  275.  
  276. Example1: SUtil -p-q -x *.pas -d *.*  -m *.* \temp /e
  277. Does    : Prompting Off, Quiet Mode on. Exclude all PAS files from ALL
  278.           operations.
  279.           Deletes all files, except PAS files.
  280.           Moves ALL files, INCLUDING PAS files to \temp. (/E overrides the
  281.           checking of the Exclude list)
  282.  
  283. Example2: SUtil -p-q -d *.* -x *.pas -m *.* \temp
  284. Does    : Prompting Off, Quiet Mode on.
  285.           Deletes all files, except PAS files. -x sets up the exclude list
  286.           for the Delete operation.
  287.           Moves ALL files, INCLUDING PAS files to \temp. The -x only affected
  288.           the Delete operation.
  289.  
  290. Example3: SUtil -p -q -e -d *.* -x *.pas -m *.* \temp
  291. Does    : Prompting Off, Quiet Mode on, Exclude List is Global.
  292.           Deletes all files, except PAS files. -x sets up the exclude list
  293.           for ALL further operations since the E GFlag was specified.
  294.           Moves ALL files, EXCEPT PAS files to \temp. In other words, this
  295.           operation does nothing (only PAS files are left as it is)
  296.  
  297. Example4: SUtil -p -q -e -c *.* \temp -d *.* -x *.pas -m *.* \temp
  298. Does    : Prompting Off, Quiet Mode on, Exclude List is Global.
  299.           Copies ALL files to \temp. There currently is no Exclude list.
  300.           Deletes all files, except PAS files. -x sets up the exclude list
  301.           for ALL further operations since the E GFlag was specified.
  302.           Moves ALL files, EXCEPT PAS files to \temp. In other words, this
  303.           operation does nothing (only PAS files are left as it is)
  304.  
  305. Example5: SUtil -p-q -d *.* -x *.pas -m *.* \temp /e
  306. Does    : This is very similar to Example2, except the E flag is specified.
  307.           Prompting Off, Quiet Mode on.
  308.           Deletes all files, except PAS files. -x sets up the exclude list
  309.           for the Delete operation.
  310.           Moves ALL files, EXCEPT PAS files to \temp. The E flag sets up the
  311.           first valid Exclude list to be used with the Move. (Which is of
  312.           course the -x *.pas declaration)
  313.  
  314. Example6: SUtil -p-q -d *.* -x *.pas -c *.* \temp -x *.bak -m *.* \temp /e
  315. Does    : Prompting Off, Quiet Mode on.
  316.           Deletes all files, except PAS files. -x sets up the exclude list
  317.           for the Delete operation.
  318.           Copies all files, except BAK files to \temp. The second -x sets up
  319.           the exclude list for the Copy operation.
  320.           Moves ALL files, EXCEPT PAS files to \temp. The E flag sets up the
  321.           first valid Exclude list to be used with the Move. (Which is the
  322.           -x *.pas declaration, NOT the -x *.bak declaration)
  323. ------------------------------------------------------------------------------
  324. Using the @filen command:
  325.  
  326.    The @filen command allows you to specify a file which contains valid SUtil
  327. commands. The format of this file can be anything consisting of valid SUtil
  328. syntax.
  329.  
  330.    You may specify operations on a line by line basis as in:
  331.         -c *.bak /p
  332.         -m *. bak /p
  333.           etc.
  334.  
  335.     Or you may use:
  336.         -c*.bak /p -m *.bak etc.
  337.  
  338.     Or even:
  339.         -c *.bak /p
  340.         [linefeed]
  341.         [linefeed]
  342.         [linefeed]
  343.         -m *.bak
  344.           etc.
  345.  
  346.  
  347.    You may also specify any number of @filen commands on the command line, or
  348. even within a @filen file.
  349.  
  350.    For example: SUtil -p-q @test -r *.bak,*.pas @read @read2
  351.  
  352.    As soon as a @filen command is encountered, that file is then read in,
  353. before processing of the rest of the command line is done.
  354. ------------------------------------------------------------------------------
  355. Using the Environment Variable:
  356.  
  357.    The SUTIL environment variable allows you to store frequently used SUtil
  358. settings (commands) which will be used every time SUtil is used.
  359.  
  360.    For example:  SET SUTIL = -p-q -x command.com *.sys
  361.  
  362.    This will set the GFLAGS to No prompting, Quiet mode, and sets the GLOBAL
  363. exclusion list to "command.com" and "*.sys". The commands stored in the
  364. environment variable are processed BEFORE any commands on the command line.
  365.  
  366.    Specific operations can naturally override these settings.
  367. ------------------------------------------------------------------------------
  368.  
  369. Error Reporting:
  370.  
  371.         Error reporting is quite extensive, and can sometimes become
  372. annoying, but it is for your safety. SUtil will ask you to confirm any file
  373. overwrites and any overwrites of files marked as ReadOnly. Most errors will
  374. not be fatal, and will only affect the current file being used. Occasionally
  375. an error may affect the entire operation, and then the operation will be
  376. aborted, and the next one executed. (If there is one)
  377.  
  378.         There are only a handful of fatal errors which are command line
  379. related. In any case, a detailed message is printed out.
  380. ------------------------------------------------------------------------------
  381. Warnings:
  382.  
  383.         Any Move/Delete operation will delete a file. If you are doing any
  384. of these operations you should leave prompting on to ensure that you do not
  385. delete a file you did not intend to. In either case, you should get a copy
  386. of one of the "undelete" programs available. (Norton Computing's Norton
  387. Utilities are the best choice)
  388. ------------------------------------------------------------------------------
  389. A quick note about the delete operation:
  390.  
  391.         SUtil's global delete will report the number of files deleted, and the
  392. total size of those files. This option is not quite as extensive as it could
  393. be, but there are "prettier" utilities out there that are tailored to global
  394. deletes. Should you find that SUtil is inadequate for your global delete
  395. desires, you should try one of these more graphically oriented global delete
  396. programs.
  397. -----------------------------------------------------------------------------
  398. Oddities:
  399.  
  400. 1)  All operations are done in their command line sequences. Therefore the
  401. following command line has the effect of renaming all TXT files to BAK
  402. files, and then deleting those SAME files, and any other BAK files! This may
  403. or may not be intentional, but because it is very easy to make mistakes, it
  404. is a good idea to leave prompting on:
  405.  
  406.           SUtil -r *.txt,*.bak -d *.bak /p
  407.  
  408. 2)  If you do not wish to Copy/Move files to a new name, you do not have to
  409. specify any target names. The program will use the last name in the filelist
  410. as the target directory, unless it determines that the file exists, in which
  411. case it will use the current directory as the target. Some of the examples
  412. pointed this out, but we are now drawing your attention to it. For example,
  413. the following each do something different:
  414.  
  415. Example: SUtil -m myfile.txt myfile.bak \temp
  416. Does   : Moves "myfile.txt" and "myfile.bak" to the "\temp" directory
  417.  
  418. Example: SUtil -m myfile.txt myfile.bak \temp\myfile.tst \temp\myfile.bak
  419. Does   : First it will attempt to move "myfile.txt" and
  420.          "myfile.bak" to the CURRENT directory, which produces an error.
  421.          Then, "\temp\myfile.bak" and "\temp\myfile.bak" are moved
  422.          to the CURRENT directory!
  423.  
  424. Example: SUtil myfile.txt myfile.bak, \temp\myfile.tst \temp\myfile.bak
  425. Does   : Moves "myfile.txt" and "myfiles.bak" to the "\temp"
  426.          directory as in the first Example, but the target names
  427.          are unnecessary.
  428.  
  429. Example: SUtil -m myfile.txt myfile.bak \temp\myfile.bak
  430. Does   : Attempts to move "myfile.txt", "myfile.bak" and "\temp\myfile.bak"
  431.          to the CURRENT directory.
  432.  
  433.  
  434. 3)  Due to the command line switches, you may not include any "-" or "/"
  435. characters in the filename, otherwise the program will think that you are
  436. attempting to start a new operation/flag. Therefore, substitute a "?" for
  437. these characters.
  438.  
  439. 4)  The ERRORLEVEL returned is not a true representation of the success of
  440. Supreme Utility. Because one has the ability to execute a number of operations,
  441. Supreme Utility will recover from the current operation and continue on to
  442. the next if it is possible to do so.
  443.  
  444.     Only when an extremely fatal internal error occurs will Supreme Utility
  445. return a ERRORLEVEL of 2.
  446.  
  447. 5)  In case it's not clear, you may use any number of command operations in
  448. one program call. This is why Supreme Utility was created. For example:
  449.  
  450.    SUtil -r *.bak,*.txt -m *.txt \temp\ -c *.doc \temp  -r *.utl *.bak
  451.  
  452. is a perfectly acceptable command line and the operations are done in the
  453. sequence specified, as indicated in Oddities #1.
  454.  
  455. (If you are uncertain, the above renames all BAK files in the current
  456. directory to TXT files, them moves all TXT files to the "\temp" directory,
  457. and then copies all DOC files to the "\temp" directory and then renames all
  458. UTL files in the current directory to BAK files)
  459.  
  460. 6)  Spaces on the command line are usually not significant. Only between
  461. filename specifications are spaces important. For example, the following
  462. command lines are equivalent:
  463.  
  464.    SUtil -p-q-r*.bak,*.txt-m*.txt \temp /p/g
  465.  
  466.    SUtil -p -q -r *.bak,*.txt -m *.txt \temp /p /q
  467.  
  468.    SUtil - p - q - r *.bak , *.txt - m *.txt \temp / p / q
  469.  
  470. 7)  A Global operation will override the sub-directory scan.
  471.  
  472. 8)  Some users have reported that Supreme Utility produces an incorrect match
  473. on any wildcard specification of: *????? or ??????*, when ???? indicates any
  474. other character. DOS specifies that the star (*) wildcard matches ALL names.
  475. Thus, regardless of that precedes or follows the * is ignored. Supreme
  476. Utility DOES take the correct action! This can be dangerous!! A wildcard such
  477. as *BAK.* will match ALL files on your disk.
  478.  
  479.     Execute the DOS command: DIR *BAK.* and you will see a listing of all
  480. files in the current directory.
  481. ------------------------------------------------------------------------------
  482. Warranty and License:
  483.  
  484.         There is NO warranty either expressed or implied. SupremeSoft can
  485. not be held accountable for anything resulting from the use of this program.
  486. Your use of this program acknowledges the fact that you understand that you
  487. are using this program of your own free will, and will take any consequences
  488. resulting from that action.
  489.  
  490.         You are granted a limited license of 30 days to evaluate this
  491. program. Should you use it beyond that period, you must register your copy,
  492. or else be in violation of this license agreement.
  493. ------------------------------------------------------------------------------
  494. Registration:
  495.  
  496.  
  497.         To register, send $20.00 to the address below. Supreme Utility is
  498. distributed either by itself or in a Utilities package. Your registration
  499. allows you to receive a copy of all the Utilities, in their latest versions.
  500.  
  501.  
  502.  Send a Check/Money Order to the following address:
  503.  
  504.                          SupremeSoft
  505.                          105 Deerfield Drive
  506.                          Easton, CT 06612
  507.                          Re: Utility Package (2.53)
  508. ------------------------------------------------------------------------------
  509.  
  510.